//index.js
//获取应用实例
Page({
  music:null,//全局变量，且为空值
  data:{
    playIndex:0,
    index:0,//（下标）
    status:'no',
    text:'nocontrol',
    //定义一个 数据类型都为链表包含：路径、歌曲名、歌手名、图片的数组来   存储多首歌曲
    playList:[
      {src:'/audios/CMJ - 所念皆星河.mp3',title:'所念皆星河',singer:'未知网友',img:'/image/111.jpg.png'},
      {src:'/audios/CMJ - 星夜.mp3',title:'星夜',singer:'浪漫星人',img:'/image/222.jpg.png'},
      {src:'/audios/CMJ - 花和你.mp3',title:'花和你',singer:'调皮熊',img:'/image/333.jpg.png'}
    ],
    //定义一个链表 来存放当前要 显示在页面的播放歌曲
    nowPlay:{
      src:'',
      title:'',
      singer:'',
      img:'',
      nowTime:'00:00',
      Time:'00:00',
      value:'0'

    }
  },
  //转换页面的函数      
  changeCurrent:function(e){
    // console.log(e)
    this.setData({index:e.target.dataset.item})
  },
  
  //页面加载完就运行的函数
  onReady:function(){
    this.music = wx.createInnerAudioContext()  //创建内置的音频环境，music为一个对象实例
    var zhiqian =this
    this.music.onPlay(function(){})//音频播放事件

    //createInnerAudioContext自带方法  onTimeUpdata() 音频播放进度更新事件 
    //                       自带属性  duration 音频的长度    currentTime 音频的播放位置   
    this.music.onTimeUpdate(function(){
      console.log(zhiqian.music.currentTime)
      console.log(zhiqian.music.duration)
      zhiqian.setData({'nowPlay.nowTime': toTime(zhiqian.music.currentTime)})
      zhiqian.setData({'nowPlay.Time':toTime(zhiqian.music.duration)})
      zhiqian.setData({'nowPlay.value':zhiqian.music.currentTime/zhiqian.music.duration*100})
    })
    this.setMusic(0)
    this.setData({status:'no'})
  
    //在一个函数中写函数
    //内部函数 toTime 转换为规范的时间
    function toTime(e) {
      //console.log(e)
      //172s 和 1s
      //将秒转换为分钟 e/60=2.812654  floor()向下取整
      var m=Math.floor(e/60)
      var s=Math.floor(e%60)
      //a<10?true:false 00:00
      return (m<10?'0'+m:m)+':'+(s<10?'0'+s:s)
    }
  },
  //完成一次拖动后回调的函数
  sliderChange:function (e) {
    // console.log(e)
    var x =e.target.value*this.music.duration/100
    this.music.seek(x) //seek()方法，跳转到指定位置
  },
  //设置系统内播放的音乐
  setMusic:function(index){
    this.setData({playIndex:index})
    this.music.src=this.data.playList[index].src //----获取音频路径
  //将播放音乐显示到当前页面(nowplay)
    this.setData({'nowPlay.singer':this.data.playList[index].singer})
    this.setData({'nowPlay.title':this.data.playList[index].title})
    this.setData({'nowPlay.src':this.data.playList[index].src})
    this.setData({'nowPlay.img':this.data.playList[index].img}) 
    this.setData({'nowPlay.nowTime':'00:00'})
    this.setData({'nowPlay.Time':'00:00'})
  },

  changePage:function(e){
    this.setData({index:e.currentTarget.dataset.page})
  },

  stopMusic:function(){
    //1.歌曲要停
    this.music.pause()
    //2.图片要变
    this.setData({status:'no'})
    this.setData({text:'nocontrol'})
  },
  playMusic:function(){
    this.music.play()
    this.setData({status:'yes'})
    this.setData({text:'control'})
  },
  nextMusic:function(){
    //获取当前播放音乐下标，将当前播放音乐的下标加一，切换到下一首
    // this.setMusic(this.playIndex+1)
    if(this.data.playIndex>=this.data.playList.length-1){
      this.setMusic(0)
    }else{
      this.setMusic(this.data.playIndex+1)
    }
  },
  
  chooseMusic:function(e){
  console.log(Number(e.currentTarget.dataset.index))
     this.setMusic(Number(e.currentTarget.dataset.index))
  }
})
